"""
# 1.文件操作:
open  -- 打开文件
file  -- 文件路径
mode  -- 操作文件的模式
encoding -- 文件的编码集

打开文件
操作文件
关闭文件

# r,w,a (******)
    # r: 读文本
        read()  全部读取
        read(3) 看文件的操作方式 r/w/a 字符
        readline 读取一行(自带换行符)
        readlines() 一行一行读取存放在列表中

    # w:清空,写
        open("xxx","w",encoding="utf-8")  # 进行清空
        write()  只能写字符串

    # a:追加
        在文本的末尾进行写入
        write()

rb,wb,ab(****)
    #rb:读字节
        read()  全部读取
        read(3) 看文件的操作方式  rb/wb/ab 字节
        readline 读取一行(自带换行符)
        readlines() 一行一行读取存放在列表中

    wb:清空,写
        open("xxx","wb")  # 进行清空
            write()  只能写字节

    ab:追加
        open("xxx","ab")
            write()  只能写字节

r+,w+,a+ (r+)

    r+:读写
        错误的方式是写读
        先读后写

    w+:清空写,读
        1.清空文件
        2.读取内容(默认读取的是空)
        3.移动光标

    a+:追加写,读
        1.先写后读
        2.读取内容(默认读取的是空)
        3.移动光标
        # 注意点: (a,ab,a+)将光标移动到某个位置进行,写入的时候还是在文件的末尾

其他操作:
    tell()  查看光标返回的是字节
    seek() 移动光标
        seek(0,0) 移动文件头部
        seek(0,1) 当前位置
        seek(0,2) 移动文件末尾

        seek(3)  # 按照字节进行计算 (计算方式根据编码计算)

    with open("文件路径","操作模式",编码")as f:
        操作文件

    with open的好处:
        1.可以同时打开多个文件
        2.能够自动关闭文件

    修改文件内容:
        1.创建一个新的文件
        2.将文件中的内容进行替换
        3.替换后的内容写入新文件中
        4.改变文件名

    路径:
        绝对路径: 从磁盘根部进行查找
        相对路径: ../返回上一级  --推荐使用
        转义:
            1."C:\\user\\ner"
            2. r"C:\user\ner"  -- 推荐使用
            
"""